<?php

include "../../../lib/start.php";

check_session();
check_permission(DOC_PERM);

ini_set("display_errors", "1");

$sel_dati = "SELECT ingresso, uscita, data FROM reg_classi WHERE id_reg = ".$_REQUEST['id_reg'];
$res_dati = $db->executeQuery($sel_dati);
$dati = $res_dati->fetch_assoc();

if($dati['ingresso'] < "9:30:00"){
	$prima_ora = 1;
}
else if($dati['ingresso'] < "10:30:00"){
	$prima_ora = 2;
}
else if($dati['ingresso'] < "11:30:00"){
	$prima_ora = 3;
}
else{
	$prima_ora = 4;
}

if($dati['uscita'] > "16:30:00"){
	$ultima_ora = 8;
}
else if($dati['uscita'] > "15:30:00"){
	$ultima_ora = 7;
}
else if($dati['uscita'] > "14:30:00"){
	$ultima_ora = 6;
}
else if($dati['uscita'] > "13:30:00"){
	$ultima_ora = 5;
}
else if($dati['uscita'] > "12:30:00"){
	$ultima_ora = 5;
}
else if($dati['uscita'] > "11:30:00"){
	$ultima_ora = 4;
}
else if($dati['uscita'] > "10:30:00"){
	$ultima_ora = 3;
}
else{
	$ultima_ora = 2;
}

$sel_firme = "SELECT * FROM reg_firme WHERE id_registro = ".$_REQUEST['id_reg']." ORDER BY ora";
//print $sel_firme;
$res_firme = $db->executeQuery($sel_firme);
$firme = array();
$argomenti = array();
$ids = array();
for($x = $prima_ora; $x <= $ultima_ora; $x++){
	$firme[$x] = array();
	$argomenti[$x] = array();
	$ids[$x] = 0;
}
if($res_firme->num_rows > 0){
	while($sig = $res_firme->fetch_assoc()){
		$firme[$sig['ora']] = $sig['firma'];
		$argomenti[$sig['ora']] = $sig['argomento'];
		$ids[$sig['ora']] = $sig['id'];
	}
}
//print_r($firme);

setlocale(LC_TIME, "it_IT");
$giorno_str = utf8_encode(strftime("%A", strtotime($dati['data'])));

/*
 * estrazione delle materie insegnate
 * prima estraggo le materie base insegnate nella classe
 * poi in base alla materia estratta verifico se necessario
 * estrarre le materie figlie o figlie di figlie (nel caso di lettere)
 */
$materia_base = array();
$materie = array();
$sel_materia = "SELECT materie.id_materia, materie.has_sons, materie.materia FROM docenti, materie, cdc WHERE cdc.id_materia = materie.id_materia AND docenti.id_docente = cdc.id_docente AND cdc.id_classe = ".$_SESSION['__classe__']->get_ID()." AND docenti.id_docente = ".$_SESSION['__user__']->getUid()." AND id_anno = ".$_SESSION['__current_year__']->get_ID()." GROUP BY materie.id_materia, materie.has_sons, materie.materia ORDER BY materie.id_materia";
//print $sel_materia;
$res_materia = $db->executeQuery($sel_materia);
while($record = $res_materia->fetch_assoc()){
	array_push($materia_base, $record);
}
//print_r($materia_base);
/*
 * primo caso: una sola materia insegnata nella classe:
 * in questo caso, una seconda estrazione e' necessaria solo 
 * per Matematica e Storia-Geografia.
 */
if($res_materia->num_rows < 2){
	if(!$materia_base[0]['has_sons']){
		array_push($materie, $materia_base[0]);
	}
	else{
		$sel_materie = "SELECT materie.id_materia, materie.has_sons, materie.materia FROM materie WHERE idpadre = ".$materia_base[0]['id_materia'];
		$res_materie = $db->executeQuery($sel_materie);
	}
}
/*
 * secondo caso: insegnante di lettere della classe
 * sono possibili due varianti: italiano + storia e geografia;
 * italiano + storia e geografia + approfondimento
 */
else{
	//print("Sono nell'else");
	foreach($materia_base as $m){
		if($m['has_sons'] == 0){
			// approfondimento e italiano: inserisco nella tabella
			array_push($materie, $m);
		}
		else{
			$sel_materie = "SELECT materie.id_materia, materie.has_sons, materie.materia FROM materie WHERE idpadre = ".$m['id_materia'];
			$res_materie = $db->executeQuery($sel_materie);
		}
	}
}
if(isset($res_materie)){
	while($mt = $res_materie->fetch_assoc()){
		array_push($materie, $mt);
	}
}
	
//print_r($materie);

include "reg_orario.html.php";

?>